package com.ks.user.service;

import com.ks.core.base.OperationContext;
import com.ks.core.dto.SearchCriteriaBase;
import com.ks.user.entity.OrgEmployee;
import com.baomidou.mybatisplus.service.IService;

import java.util.List;
import java.util.Map;

/**
 * <p>
 * 组织员工数据 服务类
 * </p>
 *
 * @author kingdee123
 * @since 2020-11-30
 */
public interface IOrgEmployeeService extends IService<OrgEmployee> {

    /**
     * 根据组织节点 获取员工清单
     *
     * @param NodeId
     * @return
     */
    List<OrgEmployee> getEmployeeList(int NodeId);


    List<OrgEmployee> getList(OperationContext operationContext);

    /**
     * 获取员工列表
     *
     * @param
     * @param searchCriteriaBase
     * @return
     */
    Map<String, Object> getEmployeeList(OperationContext operationContext, SearchCriteriaBase searchCriteriaBase);

    /**
     * 添加员工用户接口
     *
     * @param orgEmployee
     * @return
     */
    int addOrgEmployee(OperationContext operationContext, OrgEmployee orgEmployee);

    /**
     * 修改组织员工接口
     *
     * @param
     * @param orgEmployee
     * @return
     */
    int updateOrgEmployee(OperationContext operationContext, OrgEmployee orgEmployee);

    /**
     * 根据员工Id获取员工信息
     *
     * @param employeeId
     * @return
     */
    OrgEmployee getOrgEmployee(int employeeId);


    /**
     * 删除员工信息
     *
     * @param
     * @param employeeId
     * @return
     */
    int delOrgEmployee(OperationContext operationContext, int employeeId);

    OrgEmployee getEmployeeInfo(int userId);

}
